package com.mswyt.utils.msValidation.annotation;

import org.springframework.stereotype.Component;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 检查你传入的参数列表，是否值为空，遇到List、Map、Bean等等智慧判断是否为null，不会去判断比如map里面某个key是否为null或者""
 * 优先级>MsCheckMapParams；可以这么理解，我map都是null了，还有必要去检验map里的参数值吗
 */

@Component
@Target({ElementType.METHOD})
@Retention(RetentionPolicy.RUNTIME)
public @interface MsCheckParams {
    /**
     * 校验不通过返回的提示信息
     */
    String message() default "";

    //当一个方法存在多个参数，有些参数不需要校验，那么可以指定排除
    int[] excludeIndex() default {};

}
